package com.wyvoid.forum.service;


import com.wyvoid.forum.domain.Attachment;
import com.wyvoid.core.persistent.Pagination;
import com.wyvoid.core.persistent.hibernate.HibernatePage;

/**
 * 附件业务处理接口
 * 
 * @author 51void
 * @link www.51void.com
 */
public interface IAttachmentService {

	/**
	 * 根据附件编号取得附件详细信息
	 * @param attachmentId 附件编号
	 * @return Attachment 附件信息
	 */	
	public Attachment getAttachment(int attachmentId)  ;
	
	/**
	 * 删除附件信息
	 * 
	 * @param attachementId 附件编号
	 */
	public void deleteAttachment(int attachementId)  ;

	/**
	 * 删除多个附件信息
	 * 
	 * @param ids 附件编号集合
	 */
	public void deleteMoreAttachment(int[] ids)  ;
	
	
	/**
	 * 修改附件信息
	 * 
	 * @param attachment 附件信息
	 */
	public void editAttachment(Attachment attachment)  ;
	
	/**
	 * 创建附件信息
	 * 
	 * @param attachment 附件信息
	 */
	public void createAttachment(Attachment attachment)  ;
	
	/**
	 * 取得制定用户的附件列表
	 * 
	 * @param userId 用户编号
	 * @param filetype 文件类型
	 * @param pagination 分页对象
	 * @return HibernatePage 论坛贴子列表
	 * @
	 */
	public HibernatePage getAttachments(int userId,String filetype, Pagination pagination)  ;

	/**
	 * 更新下载次数
	 * @param attId 附件编号
	 * @
	 */
	public void updateDownloadTimes(int attId) ;
}
